<!doctype html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../assert_selection.js"></script>
<script>
if (window.internals)
  internals.settings.setEditingBehavior('win');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">|    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    |abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-0 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre"> |   abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    |abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-1 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">  |  abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    |abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-2 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">   | abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    |abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-3 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    |abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-4 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    a|bc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-5 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    ab|c    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-6 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc|    def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-7 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc |   def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-8 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc  |  def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-9 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc   | def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-10 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    |def    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-11 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    d|ef    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-12 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    de|f    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-13 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def|    hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-14 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def |   hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-15 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def  |  hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-16 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def   | hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-17 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    |hij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-18 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    h|ij    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-19 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hi|j    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |אבצ    דעפ    היח    opq    rst    uvw    </div>',
  '26-20 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij|    אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-21 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij |   אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-22 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij  |  אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-23 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij   | אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |\u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-24 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    |אבצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-25 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    א|בצ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-26 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אב|צ    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-27 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ|    דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-28 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ |   דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-29 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ  |  דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-30 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ   | דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    |\u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-31 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    |דעפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-32 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    ד|עפ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-33 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דע|פ    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-34 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ|    היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-35 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ |   היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-36 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ  |  היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-37 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ   | היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    |\u05D4\u05D9\u05D7    opq    rst    uvw    </div>',
  '26-38 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    |היח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-39 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    ה|יח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-40 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    הי|ח    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-41 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח|    opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-42 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח |   opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-43 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח  |  opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-44 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח   | opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    |opq    rst    uvw    </div>',
  '26-45 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    |opq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    |rst    uvw    </div>',
  '26-46 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    o|pq    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    |rst    uvw    </div>',
  '26-47 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    op|q    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    |rst    uvw    </div>',
  '26-48 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq|    rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    |rst    uvw    </div>',
  '26-49 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq |   rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    |rst    uvw    </div>',
  '26-50 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq  |  rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    |rst    uvw    </div>',
  '26-51 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq   | rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    |rst    uvw    </div>',
  '26-52 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    |rst    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    |uvw    </div>',
  '26-53 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    r|st    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    |uvw    </div>',
  '26-54 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rs|t    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    |uvw    </div>',
  '26-55 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst|    uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    |uvw    </div>',
  '26-56 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst |   uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    |uvw    </div>',
  '26-57 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst  |  uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    |uvw    </div>',
  '26-58 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst   | uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    \u05D0\u05D1\u05E6    \u05D3\u05E2\u05E4    \u05D4\u05D9\u05D7    opq    rst    |uvw    </div>',
  '26-59 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    |uvw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw|    </div>',
  '26-60 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    u|vw    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw|    </div>',
  '26-61 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uv|w    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw|    </div>',
  '26-62 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw|    </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  '26-63 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw |   </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  '26-64 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw  |  </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  '26-65 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw   | </div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  '26-66 right word');

selection_test(
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  selection => selection.modify('move', 'right', 'word'),
  '<div contenteditable dir="ltr" style="white-space:pre">    abc    def    hij    אבצ    דעפ    היח    opq    rst    uvw    |</div>',
  '26-67 right word');
</script>
